<?php
// 设置当前脚本编码
header('Content-type:text/html;charset=utf-8');

// 不限制脚本执行时间
set_time_limit(0);

// 打开地址
$Content = file_get_contents('https://book.zongheng.com/showchapter/984807.html');

// 获取小说名称
// \s 匹配空白字符
// . 匹配任意一个字符
// * 匹配前面字符零次或者多次
// i 不区分大小写
// m 视为多行
// s 模式中的圆点元字符 . 将匹配所有的字符，包括换行符
// U 取消贪婪匹配
$BookNameReg = '/<div.*class="book-meta">.*<h1>(.*)<\/h1>.*<\/div>/imsU';

preg_match($BookNameReg,$Content,$BookNameRes);

$BookName = $BookNameRes[1] ?? '';

if(empty($BookName))
{
    echo '小说名不存在';
    exit;
}

$AuthorReg = '/<p>.*<span>.*<i>作者：<\/i>.*<a.*>(.*)<\/a><\/span>.*<\/p>/imsU';

preg_match($AuthorReg,$BookNameRes[0],$AuthorRes);

$author = $AuthorRes[1] ?? '';

if(empty($author))
{
    echo '采集小说作者名为空';
    exit;
}

// 获取章节
$ChapterListReg = '/<ul.*class="chapter-list clearfix">(.*)<\/ul>/imsU';

preg_match_all($ChapterListReg,$Content,$ChapterListRes);

$ChapterList2 = $ChapterListRes[1][1] ?? '';
$ChapterList3 = $ChapterListRes[1][2] ?? '';

if(empty($ChapterList2))
{
    echo '第二卷章节不存在';
    exit;
}

if(empty($ChapterList3))
{
    echo '第三卷章节不存在';
    exit;
}

$ChapterList = $ChapterList2 . $ChapterList3;

$ResReg = '/<a.*href="(.*)".*>(.*)<\/a>/imsU';

preg_match_all($ResReg,$ChapterList,$res);

$UrlList = $res[1] ?? '';
$TitleList = $res[2] ?? '';

if(empty($UrlList))
{
    echo '章节列表地址为空';
    exit;
}

if(empty($TitleList))
{
    echo '章节列表标题为空';
    exit;
}

if(count($UrlList) != count($TitleList))
{
    echo '章节地址数量与章节标题数量不一致';
    exit;
}

$result = '';

// 循环
foreach($UrlList as $key => $url)
{
    // 给一个默认 user_agent 让他认为自己是浏览器
    ini_set('user_agent','Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)');

    // 每次循环打开相应章节
    $content = file_get_contents($url);

    var_dump($content);
    exit;

    if(empty($content))
    {
        continue;
    }

    // 获取章节信息
    $InfoReg = '/<div.*class="bookinfo">.*<span>本章字数：<i>(.*)<\/i><\/span>.*<span>更新时间：<i>(.*)<\/i><\/span><\/div>/imsU';

    preg_match($InfoReg,$content,$InfoRes);

    // // 章节字数
    // $TxtCount = $InfoRes[1] ?? '';
    // // 章节发布时间
    // $time = $Info[2] ?? '';

    // if(empty($TxtCount)) continue;
    // if(empty($time)) continue;

    // var_dump($content);

    // exit;

    // 获取内容
    // $ContentReg = '/<div.*class="content".*>(.*)<\/div>/imsU';

    

    // preg_match($ContentReg,$content,$ChapterContent);

    
    // $article = $ChapterContent[1] ?? '';

    // if(empty($article))continue;

    // // 把p标签替换换行符
    // $article = preg_replace('/<p>|<\/p>/',"\r\n",$article);

    // // 去掉html或者php标签
    // $article = strip_tags($article);

    // $result .= $TitleList[$key];

    // $result .= "\r\n更新时间：$time";

    // $result .= "\r\n本章字数：$TxtCount";

    // $result .= "\r\n" . $article . "\r\n";
}

// 保存
// $length = file_put_contents($BookName . '.txt',$result);

// if($length > 0)
// {
//     echo '采集了' . $length . '字';
//     exit;
// }else{
//     echo "保存txt文件失败\n";
// }